package com.engineering.elink.xaservice;

import com.engineering.elink.co.recruit.CvdBaseInfoCo;
import com.engineering.elink.co.recruit.CvdDatabaseCo;
import com.engineering.elink.co.recruit.CvdJobIntentionCo;
import com.engineering.elink.co.recruit.EducationExperienceAddCo;
import com.engineering.elink.co.recruit.ProjectExperienceAddCo;
import com.engineering.elink.co.recruit.WorkExperienceAddCo;


public interface CvdDatabaseXaService {
	
	/**
	 * 保存简历求职意向
	 */
	void saveJobIntention(String cvdId, CvdJobIntentionCo jobIntentionCo, String userId) throws Exception;
	
	
	/**
	 * 保存简历基本信息
	 */
	void saveBaseInfo(String cvdId, CvdBaseInfoCo baseInfoCo, String userId) throws Exception;
	
	/**
	 * 批量保存工作经验
	 */
	void saveWorkExperience(String cvdId, String jsonStr, String userId) throws Exception;
	
	/**
	 * 批量保存教育经历
	 */
	void saveEducationExperience(String cvdId, String jsonStr, String userId) throws Exception;
	
	/**
	 * 批量保存项目经验
	 */
	void saveProjectExperience(String cvdId, String jsonStr, String userId) throws Exception;
	
	/**
	 * 保存简历所有信息
	 */
	void saveCvdDatabase(CvdDatabaseCo co,String userId) throws Exception;
	
	/**
	 * 保存意向职位
	 */
	void saveTargetJob(String[] array,String userId) throws Exception;
	
	/**
	 * 批量移至简历库
	 */
	void batchMoveCvd(String vdIds, String userId) throws Exception;
	
	/**
	 * 保存工作经验
	 */
	void saveWorkExp(String cvdId, WorkExperienceAddCo workCo, String userId) throws Exception;
	
	/**
	 * 更新工作经验
	 */
	void updateWorkExp(String cvdId,Integer weId, WorkExperienceAddCo workCo, String userId) throws Exception;
	
	/**
	 * 保存教育经验
	 */
	void saveEduExp(String cvdId, EducationExperienceAddCo eeCo, String userId) throws Exception;
	
	/**
	 * 更新教育经历
	 */
	void updateEduExp(String cvdId,Integer eeId,EducationExperienceAddCo eeCo, String userId) throws Exception;
	
	/**
	 * 保存项目经验
	 */
	void saveProjectExp(String cvdId, ProjectExperienceAddCo peCo, String userId) throws Exception;
	
	/**
	 * 更新项目经验
	 */
	void updateProjectExp(String cvdId,Integer peId,ProjectExperienceAddCo peCo, String userId) throws Exception;
	
	void updateBatchJob(String[] jobIds) throws Exception;
}
